<?php
/**
 * プロジェクト毎 各種設定ファイル
 * 
 * 1.0 2010.11.20 初期リリース
 * 
 * @filesource process.conf.php
 * @package forty-two
 * @subpackage forty-two
 * @version 1.0
 */
// +------------------------------------------------------------------------
// | システム定数定義
// | 
// | 案件ごとに変わるシステムの定数定義を行います。
// +------------------------------------------------------------------------
// システム管理者メールアドレス定義
// (エラー時などこのメアド宛に報告メールが送信されます)
define('MAIL_ADMIN', '');
//define('MAIL_ADMIN', 'myamamoto@all.jp');



// +------------------------------------------------------------------------
// | エンコーディング設定
// | 
// | エンコーディングに関する各種設定を行います。
// | ※このフレームワークでは文字コードを自動的に変換するPHP機能は利用致しません。
// +------------------------------------------------------------------------
// 処理文字コード
define('CHARA_SET_INNER', 'UTF-8');
// 出力する時の文字コード
//define('CHARA_SET_OUTPUT', 'SJIS');
//define('CHARA_SET_OUTPUT', 'EUC-JP');
define('CHARA_SET_OUTPUT', 'UTF-8');

// テンプレートファイル記述文字コード
define('CHARA_SET_TEMPLATE', 'UTF-8');
// データベース文字コード
define('CHARA_SET_DATABASE', 'UTF-8');
//define('CHARA_SET_DATABASE', 'EUC-JP');


// +------------------------------------------------------------------------
// | サイト名などの設定
// | 
// | サイト名、各種コピーライトを設定します。
// +------------------------------------------------------------------------
// 表画面サイト名設定
define('SITE_NAME_FRONT', 'サンプルサイト名');
// 管理画面サイト名設定
define('SITE_NAME_ADMIN', '管理システム');

// 表画面コピーライト設定
define('COPYRIGHT_FRONT', 'Copyright (C) 2010 xxxxxxxx. All Rights Reserved.');
// 管理画面コピーライト設定
define('COPYRIGHT_ADMIN', 'COPYRIGHT (c)2010 koto , All rights reserved.');


// +------------------------------------------------------------------------
// | デバッグモードアクセス者設定
// | 
// | ここに設定したIPアドレスと一致したアクセス者は強制的にデバッグモードで
// | システムを動作し確認することができます。
// +------------------------------------------------------------------------
// 処理文字コード定義
define('DEBUG_MODE_ACCESS_IP_ADDRESS', serialize(array(
     ''
//    ,'192.168.0.2'
    ,'202.171.133.130'
)));



// +------------------------------------------------------------------------
// | デバッグモード設定
// | 
// | デバッグモードでの動作かどうかを設定します。
// | デバッグモード
// |  … TRUE：エラー時発生時、詳細にエラーを表示する
// |  … FALSE：エラー時発生時にエラー画面へ遷移し、エラーレポートメールを送信する。
// +------------------------------------------------------------------------
// デバッグモードアクセス者判定 該当する場合はデバッグモードを定義
// ユーザ定義部分
if(CU::checkAccessIPAddress(unserialize(DEBUG_MODE_ACCESS_IP_ADDRESS))) {
    define('DEBUG_MODE', TRUE);
}
if(!defined('DEBUG_MODE')) {
    // 本番
    if(SERVER_TYPE == 'WWW') {
        define('DEBUG_MODE', FALSE);
    // 本番以外はデバッグモードで起動
    } else {
        define('DEBUG_MODE', TRUE);
    }
}


// +------------------------------------------------------------------------
// | デバッグモード出力データ設定
// | 
// | デバッグモード動作時に出力する各種情報の設定
// +------------------------------------------------------------------------
// エラー時にトレースする階層設定(整数以外は全て出力します)
define('DEBUG_DISP_TRACE_HIERARCHY', 20);
// エラー時に出力する該当箇所前後行数設定(整数以外は前後5行出力します)
define('DEBUG_DISP_ERROR_SOURCE', 11);



// +------------------------------------------------------------------------
// | ドメイン定義
// | 
// | ドメインや管理画面などへのURLを定義します。
// +------------------------------------------------------------------------
// ドメイン定義
if(SERVER_TYPE == 'WWW') {
    // 本番サーバドメイン名
    define('DOMAIN_NAME', 'example.com');
    // 表画面までのURIパス
    define('SITE_URI', '/');
    // 表画面
    define('HTTP_URL', 'http://' . DOMAIN_NAME . SITE_URI);
    // 表画面SSL
    define('HTTPS_URL', 'http://' . DOMAIN_NAME . SITE_URI);
    // 管理画面までのURIパス
    define('ADMIN_URI', 'admin/');
    // 管理画面
    define('ADMIN_URL', 'http://' . DOMAIN_NAME . SITE_URI . ADMIN_URI);
} else if(SERVER_TYPE == 'DEV1') {
    // 試験サーバドメイン名
    define('DOMAIN_NAME', 'sample.all-magic.jp');
    // 表画面までのURIパス
    define('SITE_URI', '/test_yamamoto/ft/public_html/');
    // 表画面
    define('HTTP_URL', 'http://' . DOMAIN_NAME . SITE_URI);
    // 表画面SSL
    define('HTTPS_URL', 'http://' . DOMAIN_NAME . SITE_URI);
    // 管理画面までのURIパス
    define('ADMIN_URI', 'admin/');
    // 管理画面
    define('ADMIN_URL', 'http://' . DOMAIN_NAME . SITE_URI . ADMIN_URI);
}



// +------------------------------------------------------------------------
// | データタイプ設定定義
// | 
// | データをFILEで持つかDBで持つかの設定を行います。
// +------------------------------------------------------------------------
// データタイプ('FILE' or 'DB')
define('DATA_TYPE', 'DB');
//define('DATA_TYPE', 'FILE');

// DB時の接続先設定
if (SERVER_TYPE == 'WWW') {
    // 本番サーバ
    // 標準選択DB設定名定義
    define('DEFAULT_DB_CONNECTION_NAME', 'base');
    // DNS設定定義
    define('DATABASE_SETTINGS', serialize(array(
                 DEFAULT_DB_CONNECTION_NAME => array(
                     'type'   => 'mysql'
                    ,'hostspec'  => 'localhost'
                    ,'port'      => ''
                    ,'socket'    => ''
                    ,'database'  => 'testdatabase'
                    ,'username'  => 'root'
                    ,'password'  => 'password'
                )
            )));
    // DB構造情報キャッシュファイル更新間隔定義(単位秒)
    define('DATABASE_CASH_UPDATE_INTERVAL', 60*60*24);
    // DB構造キャッシュ情報保持ディレクトリへのパス
    define('PATH_DB_INFO', PATH_WRITE_DATA . 'dbCache' . DS);
} else if(SERVER_TYPE == 'DEV1') {
    // 試験サーバ
    // 標準選択DB設定名定義
    define('DEFAULT_DB_CONNECTION_NAME', 'base');
    // DNS設定定義
    define('DATABASE_SETTINGS', serialize(array(
                 DEFAULT_DB_CONNECTION_NAME => array(
                     'type'   => 'mysql'
                    ,'hostspec'  => 'localhost'
                    ,'port'      => '13306'
                    ,'socket'    => '/tmp/mysql-5.0.45-1.sock'
                    ,'database'  => 'amtest_yamamoto'
                    ,'username'  => 'root'
                    ,'password'  => 'password'
                )
                ,'pg' => array(
                     'type'   => 'pgsql'
                    ,'hostspec'  => 'localhost'
                    ,'port'      => ''
                    ,'socket'    => ''
                    ,'database'  => 'test'
                    ,'username'  => 'pguser'
                    ,'password'  => 'pguser'
                )
            )));
    // DB構造情報キャッシュファイル更新間隔定義(単位秒)
    define('DATABASE_CASH_UPDATE_INTERVAL', 60*60);
    // DB構造キャッシュ情報保持ディレクトリへのパス
    define('PATH_DB_INFO', PATH_WRITE_DATA . 'dbCache' . DS);
}




// +------------------------------------------------------------------------
// | システム内利用定数定義
// | 
// | 各種定数の定義を行います
// +------------------------------------------------------------------------
// 検索一覧ページ(1ページ表示件数)
define('SEARCH_DISPLAY_NUM', serialize(array(
     '20' => '20件'
    ,'30' => '30件'
    ,'40' => '40件'
    ,'50' => '50件'
    ,'100' => '100件'
)));

// セレクト初期値
define('START_YEAR_FROM', '1995');

// セレクト初期値
define('PLEASE_SELECT', '選択してください');

// 1ページ表示数
define('PAGE_DISPLAY_NUM', 30);

// 表画面サーチキャッシュ有効/無効
define('SEARCH_CASH', TRUE);
//define('SEARCH_CASH', FALSE);

// ユーティリティクラスの読み込み
require_once 'Utility.class.php';

?>